<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>json-兼容性问题</title>
</head>
<body>
    
</body>
</html>
<script>
    var str ='{"name":"孙悟空","age":18,"gender":"男"}';

    /*
        eval()
            - 这个函数可以用来执行一段字符串形式的 js 代码，并将执行结果返回
            - 如果使用 eval() 执行的字符串中含有{} ,他会将{} 当成是 代码块
                如果不希望将其变成代码块解析，则需要在字符串前后各加一个()

            - eval() 这个函数的功能很强大，可以直接执行一个字符串中的 js 代码
                但是在开发中尽量不要使用， 首先它的执行性能比较差，然后它还具有安全隐患
    */
    
    var str2 = "alert('你好Tom')";
    // eval(str2);

    var obj = eval("("+str+")");
    console.log(obj);

</script>